package com.punai.dataanalysis.epdatakb.domain;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.punai.common.utils.NumberUtil;
import com.punai.dataanalysis.ng001.domain.ProjectTable;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.punai.common.annotation.Excel;
import com.punai.common.core.domain.BaseEntity;

/**
 * 年度工程成本情况汇总对象 data_analysis_ndjsgcxmsjfxhzb
 *
 * @author zxw_
 * @date 2023-04-20
 */
public class DataAnalysisNdjsgcxmsjfxhzb extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private String id;
    /**
     * 上级ID
     */
    @Excel(name = "上级ID")
    private String pid;
    /**
     * 统计月份
     */
    @Excel(name = "统计月份")
    private String ydTime;
    /**
     * 序号
     */
    @Excel(name = "序号")
    private String xh;
    /**
     * 合同受控号
     */
    @Excel(name = "合同受控号")
    private String htContrNo;
    /**
     * 建设单位
     */
    @Excel(name = "建设单位")
    private String jsdw;
    /**
     * 工程名称
     */
    @Excel(name = "工程名称")
    private String proName;
    /**
     * 合同名称
     */
    @Excel(name = "合同名称")
    private String htName;
    /**
     * 合同价款
     */
    @Excel(name = "合同价款")
    private BigDecimal htTotal;
    /**
     * 建筑面积（㎡）
     */
    @Excel(name = "建筑面积", readConverterExp = "㎡=")
    private BigDecimal jzmj;
    /**
     * 区域（省、市、县区）
     */
    @Excel(name = "区域", readConverterExp = "省=、市、县区")
    private String address;
    /**
     * 工程状态
     */
    @Excel(name = "工程状态")
    private String proStatus;
    /**
     * 项目部
     */
    @Excel(name = "项目部")
    private String deptName;
    /**
     * 项目经理
     */
    @Excel(name = "项目经理")
    private String xmjl;
    /**
     * 本年完成产值情况-预算-合计
     */
    @Excel(name = "本年完成产值情况-预算-合计")
    private BigDecimal yearqkYsCzHj;
    /**
     * 本年完成产值情况-预算-其中专业分包
     */
    @Excel(name = "本年完成产值情况-预算-其中专业分包")
    private BigDecimal yearqkYsCzZyfb;
    /**
     * 本年完成产值情况-税金
     */
    @Excel(name = "本年完成产值情况-税金")
    private BigDecimal yearqkCzSj;
    /**
     * 本年完成产值情况-税金
     */
    @Excel(name = "本年完成产值情况-税金")
    private BigDecimal yearqkCzJgc;
    /**
     * 往年累计发生成本情况-成本-合计
     */
    @Excel(name = "往年累计发生成本情况-成本-合计")
    private BigDecimal klqkCostHj;
    /**
     * 往年累计发生成本情况-成本-合计
     */
    @Excel(name = "往年累计发生成本情况-成本-合计")
    private BigDecimal klqkCostZyfb;
    /**
     * 往年累计发生成本情况-甲供材
     */
    @Excel(name = "往年累计发生成本情况-甲供材")
    private BigDecimal klqkCostJgc;
    /**
     * 往年累计发生成本情况-往年年终盘点利润情况
     */
    @Excel(name = "往年累计发生成本情况-往年年终盘点利润情况")
    private BigDecimal klqkCostYearPd;
    /**
     * 往年累计发生成本情况-往年年终盘点利润率
     */
    @Excel(name = "往年累计发生成本情况-往年年终盘点利润率")
    private BigDecimal klqkCostYearPdLrl;
    /**
     * 本年完成产值-预算-合计
     */
    @Excel(name = "本年完成产值-预算-合计")
    private BigDecimal yearCzHj;
    /**
     * 本年完成产值-预算-其中专业分包
     */
    @Excel(name = "本年完成产值-预算-其中专业分包")
    private BigDecimal yearCzZyfb;
    /**
     * 本年完成产值-税金
     */
    @Excel(name = "本年完成产值-税金")
    private BigDecimal yearCzSj;
    /**
     * 本年完成产值-甲供材
     */
    @Excel(name = "本年完成产值-甲供材")
    private BigDecimal yearCzJgc;
    /**
     * 本年发生成本-成本-合计
     */
    @Excel(name = "本年发生成本-成本-合计")
    private BigDecimal yearCostHj;
    /**
     * 本年发生成本-成本-其中专业分包
     */
    @Excel(name = "本年发生成本-成本-其中专业分包")
    private BigDecimal yearCostZyfb;
    /**
     * 本年发生成本-甲供材
     */
    @Excel(name = "本年发生成本-甲供材")
    private BigDecimal yearCostJgc;
    /**
     * 本年利润情况分析-本年利润
     */
    @Excel(name = "本年利润情况分析-本年利润")
    private BigDecimal yearLr;
    /**
     * 本年利润情况分析-利润率
     */
    @Excel(name = "本年利润情况分析-利润率")
    private BigDecimal yearLrl;
    /**
     * 累计完成产值情况-预算-合计
     */
    @Excel(name = "累计完成产值情况-预算-合计")
    private BigDecimal klCzYsHj;
    /**
     * 累计完成产值情况-预算-其中专业分包
     */
    @Excel(name = "累计完成产值情况-预算-其中专业分包")
    private BigDecimal klCzYsZyfb;
    /**
     * 累计完成产值情况-税金
     */
    @Excel(name = "累计完成产值情况-税金")
    private BigDecimal klCzSj;
    /**
     * 累计完成产值情况-甲供材
     */
    @Excel(name = "累计完成产值情况-甲供材")
    private BigDecimal klCzJgc;
    /**
     * 累计发生成本情况-成本-合计
     */
    @Excel(name = "累计发生成本情况-成本-合计")
    private BigDecimal klCostHj;
    /**
     * 累计发生成本情况-成本-其中专业分包
     */
    @Excel(name = "累计发生成本情况-成本-其中专业分包")
    private BigDecimal klCostZyfb;
    /**
     * 累计发生成本情况-甲供材
     */
    @Excel(name = "累计发生成本情况-甲供材")
    private BigDecimal klCostJgc;
    /**
     * 累计利润考核情况分析-利润
     */
    @Excel(name = "累计利润考核情况分析-利润")
    private BigDecimal klLr;
    /**
     * 累计利润考核情况分析-利润率
     */
    @Excel(name = "累计利润考核情况分析-利润率")
    private BigDecimal klLrl;
    /**
     * 中合同考核情况-上交综合费率
     */
    @Excel(name = "中合同考核情况-上交综合费率")
    private BigDecimal htkhSjzhfl;
    /**
     * 中合同考核情况-上交综合费用
     */
    @Excel(name = "中合同考核情况-上交综合费用")
    private BigDecimal htkhSjzhfy;
    /**
     * 中合同考核情况-项目待分配所得
     */
    @Excel(name = "中合同考核情况-项目待分配所得")
    private BigDecimal htkhXmdfp;
    /**
     * 形象进度
     */
    @Excel(name = "形象进度")
    private String xxjd;
    /**
     * 备注
     */
    @Excel(name = "备注")
    private String remark;

    /**
     * 合并行
     */
    @TableField(exist = false)
    private boolean hb = false;

    @TableField(exist = false)
    private String pc;



    public static DataAnalysisNdjsgcxmsjfxhzb conversion(DataAnalysisNdjsgcxmsjfxhzb dataAnalysisNdjsgcxmsjfxhzb, ProjectTable projectTable) {
        if(dataAnalysisNdjsgcxmsjfxhzb == null) dataAnalysisNdjsgcxmsjfxhzb = new DataAnalysisNdjsgcxmsjfxhzb();
        dataAnalysisNdjsgcxmsjfxhzb.setHtContrNo(projectTable.getUserSkh());
        dataAnalysisNdjsgcxmsjfxhzb.setJsdw(projectTable.getCompname());
        dataAnalysisNdjsgcxmsjfxhzb.setProName(projectTable.getProjectName());
        dataAnalysisNdjsgcxmsjfxhzb.setHtName(projectTable.getProjectNamep());
        dataAnalysisNdjsgcxmsjfxhzb.setHtTotal(NumberUtil.getValue(projectTable.getCntAmtFc()));
        dataAnalysisNdjsgcxmsjfxhzb.setJzmj(NumberUtil.getValue(projectTable.getBuildingArea()));
        dataAnalysisNdjsgcxmsjfxhzb.setAddress(projectTable.getProvincename() + projectTable.getCityname() + projectTable.getRegionname());
        dataAnalysisNdjsgcxmsjfxhzb.setProStatus(projectTable.getDescript());
        dataAnalysisNdjsgcxmsjfxhzb.setDeptName(projectTable.getOname());
        dataAnalysisNdjsgcxmsjfxhzb.setXmjl(projectTable.getCname());
        return dataAnalysisNdjsgcxmsjfxhzb;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setPid(String pid) {
        this.pid = pid;
    }

    public String getPid() {
        return pid;
    }

    public void setYdTime(String ydTime) {
        this.ydTime = ydTime;
    }

    public String getYdTime() {
        return ydTime;
    }

    public void setXh(String xh) {
        this.xh = xh;
    }

    public String getXh() {
        return xh;
    }

    public void setHtContrNo(String htContrNo) {
        this.htContrNo = htContrNo;
    }

    public String getHtContrNo() {
        return htContrNo;
    }

    public void setJsdw(String jsdw) {
        this.jsdw = jsdw;
    }

    public String getJsdw() {
        return jsdw;
    }

    public void setProName(String proName) {
        this.proName = proName;
    }

    public String getProName() {
        return proName;
    }

    public void setHtName(String htName) {
        this.htName = htName;
    }

    public String getHtName() {
        return htName;
    }

    public void setHtTotal(BigDecimal htTotal) {
        this.htTotal = htTotal;
    }

    public BigDecimal getHtTotal() {
        return htTotal;
    }

    public void setJzmj(BigDecimal jzmj) {
        this.jzmj = jzmj;
    }

    public BigDecimal getJzmj() {
        return jzmj;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getAddress() {
        return address;
    }

    public void setProStatus(String proStatus) {
        this.proStatus = proStatus;
    }

    public String getProStatus() {
        return proStatus;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setXmjl(String xmjl) {
        this.xmjl = xmjl;
    }

    public String getXmjl() {
        return xmjl;
    }

    public void setYearqkYsCzHj(BigDecimal yearqkYsCzHj) {
        this.yearqkYsCzHj = yearqkYsCzHj;
    }

    public BigDecimal getYearqkYsCzHj() {
        return yearqkYsCzHj;
    }

    public void setYearqkYsCzZyfb(BigDecimal yearqkYsCzZyfb) {
        this.yearqkYsCzZyfb = yearqkYsCzZyfb;
    }

    public BigDecimal getYearqkYsCzZyfb() {
        return yearqkYsCzZyfb;
    }

    public void setYearqkCzSj(BigDecimal yearqkCzSj) {
        this.yearqkCzSj = yearqkCzSj;
    }

    public BigDecimal getYearqkCzSj() {
        return yearqkCzSj;
    }

    public void setYearqkCzJgc(BigDecimal yearqkCzJgc) {
        this.yearqkCzJgc = yearqkCzJgc;
    }

    public BigDecimal getYearqkCzJgc() {
        return yearqkCzJgc;
    }

    public void setKlqkCostHj(BigDecimal klqkCostHj) {
        this.klqkCostHj = klqkCostHj;
    }

    public BigDecimal getKlqkCostHj() {
        return klqkCostHj;
    }

    public void setKlqkCostZyfb(BigDecimal klqkCostZyfb) {
        this.klqkCostZyfb = klqkCostZyfb;
    }

    public BigDecimal getKlqkCostZyfb() {
        return klqkCostZyfb;
    }

    public void setKlqkCostJgc(BigDecimal klqkCostJgc) {
        this.klqkCostJgc = klqkCostJgc;
    }

    public BigDecimal getKlqkCostJgc() {
        return klqkCostJgc;
    }

    public void setKlqkCostYearPd(BigDecimal klqkCostYearPd) {
        this.klqkCostYearPd = klqkCostYearPd;
    }

    public BigDecimal getKlqkCostYearPd() {
        return klqkCostYearPd;
    }

    public void setKlqkCostYearPdLrl(BigDecimal klqkCostYearPdLrl) {
        this.klqkCostYearPdLrl = klqkCostYearPdLrl;
    }

    public BigDecimal getKlqkCostYearPdLrl() {
        return klqkCostYearPdLrl;
    }

    public void setYearCzHj(BigDecimal yearCzHj) {
        this.yearCzHj = yearCzHj;
    }

    public BigDecimal getYearCzHj() {
        return yearCzHj;
    }

    public void setYearCzZyfb(BigDecimal yearCzZyfb) {
        this.yearCzZyfb = yearCzZyfb;
    }

    public BigDecimal getYearCzZyfb() {
        return yearCzZyfb;
    }

    public void setYearCzSj(BigDecimal yearCzSj) {
        this.yearCzSj = yearCzSj;
    }

    public BigDecimal getYearCzSj() {
        return yearCzSj;
    }

    public void setYearCzJgc(BigDecimal yearCzJgc) {
        this.yearCzJgc = yearCzJgc;
    }

    public BigDecimal getYearCzJgc() {
        return yearCzJgc;
    }

    public void setYearCostHj(BigDecimal yearCostHj) {
        this.yearCostHj = yearCostHj;
    }

    public BigDecimal getYearCostHj() {
        return yearCostHj;
    }

    public void setYearCostZyfb(BigDecimal yearCostZyfb) {
        this.yearCostZyfb = yearCostZyfb;
    }

    public BigDecimal getYearCostZyfb() {
        return yearCostZyfb;
    }

    public void setYearCostJgc(BigDecimal yearCostJgc) {
        this.yearCostJgc = yearCostJgc;
    }

    public BigDecimal getYearCostJgc() {
        return yearCostJgc;
    }

    public void setYearLr(BigDecimal yearLr) {
        this.yearLr = yearLr;
    }

    public BigDecimal getYearLr() {
        return yearLr;
    }

    public void setYearLrl(BigDecimal yearLrl) {
        this.yearLrl = yearLrl;
    }

    public BigDecimal getYearLrl() {
        return yearLrl;
    }

    public void setKlCzYsHj(BigDecimal klCzYsHj) {
        this.klCzYsHj = klCzYsHj;
    }

    public BigDecimal getKlCzYsHj() {
        return klCzYsHj;
    }

    public void setKlCzYsZyfb(BigDecimal klCzYsZyfb) {
        this.klCzYsZyfb = klCzYsZyfb;
    }

    public BigDecimal getKlCzYsZyfb() {
        return klCzYsZyfb;
    }

    public void setKlCzSj(BigDecimal klCzSj) {
        this.klCzSj = klCzSj;
    }

    public BigDecimal getKlCzSj() {
        return klCzSj;
    }

    public void setKlCzJgc(BigDecimal klCzJgc) {
        this.klCzJgc = klCzJgc;
    }

    public BigDecimal getKlCzJgc() {
        return klCzJgc;
    }

    public void setKlCostHj(BigDecimal klCostHj) {
        this.klCostHj = klCostHj;
    }

    public BigDecimal getKlCostHj() {
        return klCostHj;
    }

    public void setKlCostZyfb(BigDecimal klCostZyfb) {
        this.klCostZyfb = klCostZyfb;
    }

    public BigDecimal getKlCostZyfb() {
        return klCostZyfb;
    }

    public void setKlCostJgc(BigDecimal klCostJgc) {
        this.klCostJgc = klCostJgc;
    }

    public BigDecimal getKlCostJgc() {
        return klCostJgc;
    }

    public void setKlLr(BigDecimal klLr) {
        this.klLr = klLr;
    }

    public BigDecimal getKlLr() {
        return klLr;
    }

    public void setKlLrl(BigDecimal klLrl) {
        this.klLrl = klLrl;
    }

    public BigDecimal getKlLrl() {
        return klLrl;
    }

    public void setHtkhSjzhfl(BigDecimal htkhSjzhfl) {
        this.htkhSjzhfl = htkhSjzhfl;
    }

    public BigDecimal getHtkhSjzhfl() {
        return htkhSjzhfl;
    }

    public void setHtkhSjzhfy(BigDecimal htkhSjzhfy) {
        this.htkhSjzhfy = htkhSjzhfy;
    }

    public BigDecimal getHtkhSjzhfy() {
        return htkhSjzhfy;
    }

    public void setHtkhXmdfp(BigDecimal htkhXmdfp) {
        this.htkhXmdfp = htkhXmdfp;
    }

    public BigDecimal getHtkhXmdfp() {
        return htkhXmdfp;
    }

    public void setXxjd(String xxjd) {
        this.xxjd = xxjd;
    }

    public String getXxjd() {
        return xxjd;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getRemark() {
        return remark;
    }

    public String getPc() {
        return pc;
    }

    public void setPc(String pc) {
        this.pc = pc;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("pid", getPid())
                .append("createBy", getCreateBy())
                .append("updateBy", getUpdateBy())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("ydTime", getYdTime())
                .append("xh", getXh())
                .append("htContrNo", getHtContrNo())
                .append("jsdw", getJsdw())
                .append("proName", getProName())
                .append("htName", getHtName())
                .append("htTotal", getHtTotal())
                .append("jzmj", getJzmj())
                .append("address", getAddress())
                .append("proStatus", getProStatus())
                .append("deptName", getDeptName())
                .append("xmjl", getXmjl())
                .append("yearqkYsCzHj", getYearqkYsCzHj())
                .append("yearqkYsCzZyfb", getYearqkYsCzZyfb())
                .append("yearqkCzSj", getYearqkCzSj())
                .append("yearqkCzJgc", getYearqkCzJgc())
                .append("klqkCostHj", getKlqkCostHj())
                .append("klqkCostZyfb", getKlqkCostZyfb())
                .append("klqkCostJgc", getKlqkCostJgc())
                .append("klqkCostYearPd", getKlqkCostYearPd())
                .append("klqkCostYearPdLrl", getKlqkCostYearPdLrl())
                .append("yearCzHj", getYearCzHj())
                .append("yearCzZyfb", getYearCzZyfb())
                .append("yearCzSj", getYearCzSj())
                .append("yearCzJgc", getYearCzJgc())
                .append("yearCostHj", getYearCostHj())
                .append("yearCostZyfb", getYearCostZyfb())
                .append("yearCostJgc", getYearCostJgc())
                .append("yearLr", getYearLr())
                .append("yearLrl", getYearLrl())
                .append("klCzYsHj", getKlCzYsHj())
                .append("klCzYsZyfb", getKlCzYsZyfb())
                .append("klCzSj", getKlCzSj())
                .append("klCzJgc", getKlCzJgc())
                .append("klCostHj", getKlCostHj())
                .append("klCostZyfb", getKlCostZyfb())
                .append("klCostJgc", getKlCostJgc())
                .append("klLr", getKlLr())
                .append("klLrl", getKlLrl())
                .append("htkhSjzhfl", getHtkhSjzhfl())
                .append("htkhSjzhfy", getHtkhSjzhfy())
                .append("htkhXmdfp", getHtkhXmdfp())
                .append("xxjd", getXxjd())
                .append("remark", getRemark())
                .toString();
    }

    public void hb() {
        this.hb = true;
    }

    public boolean isHb() {
        return hb;
    }

    public void setHb(boolean hb) {
        this.hb = hb;
    }
}
